El software de análisis de estructuras RFEM 6 es la base de un sistema de software modular. El programa principal RFEM 6 se usa para definir estructuras, materiales y cargas de sistemas estructurales planos y espaciales compuestos por placas, muros, láminas y barras. El programa también le permite crear estructuras mixtas, así como modelar elementos sólidos y de contacto.
RSTAB 9 es un software potente de análisis y dimensionamiento en 3D de estructuras de vigas, pórticos o cerchas, que refleja el estado de la técnica actual y ayuda a los ingenieros y consultores de estructuras a cumplir con los requisitos de la ingeniería de estructuras moderna.
¿Está a menudo ocupado con el cálculo de secciones durante demasiado tiempo? Dlubal Software y el programa independiente RSECTION facilitan su trabajo al determinar y realizar un análisis de tensiones para varias secciones.
¿Siempre sabe de dónde viene el viento? ¡Desde la dirección de la innovación, por supuesto! Con RWIND 2 a su lado tiene un programa que utiliza un túnel de viento digital para la simulación numérica de los flujos de viento. El programa simula estos flujos alrededor de cualquier geometría de construcción y determina las cargas de viento en las superficies.
¿Está buscando una vista general de las zonas de carga de nieve, zonas de viento y zonas de sísmicas? Entonces está en el lugar correcto. Utilice la herramienta <i>Geo-Zone</i> para la determinación rápida de las cargas de nieve, velocidades de viento y zonas sísmicas según el Eurocódigo, CTE, ASCE 7-16 y otras normas internacionales.
¿Le gustaría probar la potencia de los programas de Dlubal Software? ¡Es su oportunidad! Con la versión completa gratuita de 90 días, puede probar todos nuestros programas por completo.
Una función para articulaciones lineales de comportamiento no lineal no está disponible actualmente en la biblioteca de alto nivel de Python. Sin embargo, dado que es posible usar parámetros definidos por el usuario como es habitual en el método para articulaciones lineal, tampoco es un problema generar articulaciones lineales de comportamiento no lineal.
En el programa de ejemplo, se crean primero dos superficies rectangulares con apoyos en nudo, que son las conectadas en la Línea 6.
La definición de la articulación lineal de comportamiento no lineal comienza a partir de la Línea 39. Primero, se crea un diccionario (dictionary) p con los parámetros. Es necesario definir tres grados de libertad de desplazamiento y un grado de libertad de giro. El valor 0.0 significa que el grado de libertad es libre. Si en su lugar se escribe un valor numérico, se interpreta como un muelle. Asegúrese de que se utilicen aquí las unidades básicas del SI. Al usar inf , el grado de libertad se define como fijo.
p
0.0
inf
Debe haber una no linealidad en la dirección y. Esto se establece con la clave (key) translational_release_u_y_nonlinearity. Este artículo describe cómo determinar los valores necesarios, como NONLINEARITY_TYPE_FAILURE_IF_POSITIVE.
translational_release_u_y_nonlinearity
NONLINEARITY_TYPE_FAILURE_IF_POSITIVE
La siguiente macro de VBA muestra la creación de un soporte nodal con la no linealidad de "Actividad Parcial". El código fuente se puede encontrar en Descargas.
Opción explícita
' --------------------------Soporte secundario ()' --------------------------
Soporte de atenuación (0) Como RFEM5.NodalSupportAtenuar ISup como RFEM5.INodalSupportAtenuar ISupPA como RFEM5.IPartialActivityDim nlPA como actividad parcial
e: Si Err.Number <> 0 Entonces MsgBox Err.Description`` Err.Source
End Sub
Um ein nicht lineares Element wie ein Stabendgelenk mit Diagramm oder Ausfall anlegen zu können, muss zunächst das Stabendgelenk angelegt werden. Wenn RFEM das Stabendgelenk kennt, kann dieses über die Schnittstelle IMemberEndRelease geholt werden. Diese Schnittstelle verfügt dann über die Methoden GetData() und SetData(). Beide Methoden sind in der Lage sowohl die einfachen Stabendgelenkdaten vom Typ MemberEndRelease als auch die Daten einer Nichtlinearität auszulesen bzw. zu schreiben.
Im folgenden Beispiel wird in Stabendgelenk zunächst für die x-Richtung ein Gelenk aktiviert und dann als Nichtlinearität in x-Richtung der Typ WorkingDiagramType eingestellt. Nachdem diese Daten mithilfe eines Prepare-Finish-Modification-Blocks an RFEM übergeben wurden, legt dieses intern die Nichtlinearität an. Um diese mit Daten zu füllen, werden zunächst die vorhandenen Daten über GetData() von der Schnittstelle des Stabendgelenks geholt.
Nachdem die Daten (NonlinearityDiagram) ausgefüllt wurden, werde diese wieder mit SetData() übergeben:
Sub SetNLDiagram()Dim model As RFEM5.modelSet model = GetObject(, "RFEM5.Model")On Error GoTo eDim iApp As RFEM5.ApplicationSet iApp = model.GetApplicationiApp.LockLicenseiApp.ShowDim iModelData As RFEM5.iModelDataSet iModelData = model.GetModelData' modify member end release' set nonlinearity "Diagram" for x translationDim iMemHing As RFEM5.IMemberHingeSet iMemHing = iModelData.GetMemberHinge(1, AtNo)Dim memHing As RFEM5.MemberHingememHing = iMemHing.GetData()memHing.TranslationalConstantX = 0memHing.TranslationalNonlinearityX = WorkingDiagramType' Set new dataiModelData.PrepareModificationiMemHing.SetData memHingiModelData.FinishModification' create diagramDim tbl1() As DoubleReDim tbl1(1, 1)tbl1(0, 0) = 0 ' u-xtbl1(0, 1) = 0 ' P-xtbl1(1, 0) = 0.02 ' u-x (mm)tbl1(1, 1) = 2000 ' P-x (N)Dim nldHing As RFEM5.NonlinearityDiagramnldHing.ForceType = StiffnessDiagramForceType.NoneStiffnessForcenldHing.PositiveZoneType = DiagramAfterLastStepType.TearingDiagramTypenldHing.PositiveZone = tbl1nldHing.Symmetric = TrueDim iNldiag As RFEM5.INonlinearityDiagramSet iNldiag = iMemHing.GetNonlinearity(AlongAxisX)' Set new dataiModelData.PrepareModificationiNldiag.SetData nldHingiModelData.FinishModificatione: If Err.Number <> 0 Then MsgBox Err.description, , Err.Sourcemodel.GetApplication.UnlockLicenseEnd Sub
Die Vorgehensweise ist für Knotenlager und andere Nichtlinearitäten analog.
La siguiente macro de VBA muestra la creación de un apoyo en nudo con un diagrama de no linealidad. El código fuente se puede encontrar en Descargas.
Subprueba_sección ()' get interface from the opened model and lock the licence/program Dim iModel As RFEM5.IModel3 Set iModel = GetObject(, "RFEM5.Model") iModel.GetApplication.LockLicense En caso de error, vaya a E Dim iSecs como RFEM5.ISectionsEstablecer iSecs = iModel.GetSections ()
' primero elimina todas las seccionesiSecs.PrepareModification iSecs.DeleteObjects ("Todos")iSecs.FinishModification ' establecer sección en sólidoDim sec As RFEM5.Sectionsec.EdgePointA.X = 2sec.EdgePointA.Y = 5sec.EdgePointA.Z = 0sec.EdgePointB.X = 2sec.EdgePointB.Y = 8sec.EdgePointB.Z = 0 seg. = 1sec.Name = "sección sólida"sec.Plane = GlobalPlaneInPositiveXsec.ShowValuesInIsolines = Falsesec.Type = SectionOnSolidSectionLinesec.ObjectList = "1" iSecs.PrepareModificationiSecs.SetSection seciSecs.FinishModification
' establecer sección en la superficiesec.EdgePointA.X = 2sec.EdgePointA.Y = 0sec.EdgePointA.Z = 0sec.EdgePointB.X = 2sec.EdgePointB.Y = 3sec.EdgePointB.Z = 0 seg. = 2sec.Name = "sección de superficie"sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = Truesec.Type = SectionViaSurfacePlanesec.ObjectList = "1" sec.Vector.X = 0sec.Vector.Y = 0sec.Vector.Z = 1 iSecs.PrepareModificationiSecs.SetSection seciSecs.FinishModification
' obtener resultados Dim iCalc As ICalculation2 Set iCalc = iModel.GetCalculation Dim iRes como IResults2Establecer iRes = iCalc.GetResultsInFeNodes (LoadCaseType, 1) Dim secRes () como RFEM5.SectionResultsecRes = iRes.GetResultsInSection (2, AtNo,ShearForceVy, ContinuousDistributionWithinObjects, False)